1. Field of the Invention
The present invention relates to a packet transferring device which accommodates a data terminal and carries out packet communication via a network.
2. Description of the Prior Art
FIG. 5 is a sequence diagram showing an operation of a file transferring method, as disclosed in Japanese patent laid-open No. Hei 5-48672, or the like. In this diagram, a source computer transfers data to a destination computer via a network device.
A source computer sends a message SEQ100 which consists of a sequence number and data to a network device. Upon receipt of the message, the network device forwards a message SEQ101 to a destination computer. When the destination computer receives the message, it returns a message ACK102 to the network device. Having confirmed the receipt of the message ACK102, the network device returns a message ACK103 to the source computer. Receiving the message ACK103, the source computer sends an ACK confirmation signal 104 to the network device. The network device which receives the ACK confirmation signal 104 then sends a transmission instruction signal 105 to the source computer. When the source computer receives the signal 105, it is ready for starting the next data sending.
If the source computer does not receive a message ACK and instead receives a line disconnection signal 106 which informs that a line was disconnected due to line trouble from the network device, the source computer stops sending data to the network device until it receives a line recovery signal 107. upon receipt of a line recovery signal 107, the source computer identifies data whose receipt by a transmission receiver is not confirmed (in other words, data which has not obtained a transmission confirmation), based on the sequence numbers SEQ of data whose receipt by a transmission receiver is confirmed (transmitted data) by the messages ACK received thus far from the network device. The source computer then resumes sending data to the network device, beginning with the identified data without transmission confirmation. That is, the data without transmission confirmation is sent to the network because data whose receipt by a transmission receiver has been confirmed by a message ACK does not need to be resent.
As described above, when data is resent in a conventional transferring method as shown in FIG. 5, after restoration of a disconnected line due to line trouble, etc., a resending operation is conducted beginning with data which has not been sent or has not obtained a transmission confirmation (untransmitted data), and is not performed on data whose transmission confirmation has been obtained. In order to send data using this method, a source computer, i.e. a terminal, must always follow a special protocol in usual communication with a network device, i.e. a packet transferring device. In other words, this method is applicable only when a computer which supports a specific protocol is used as a source computer. Also, in this method, data sending may not be resumed when a protocol error occurs between a source computer and a network device due to communication trouble, etc.
The present invention was conceived to overcome the above problems, and thus aims to provide a packet transferring device which can execute an effective resending of data after a call is re-established to send the same data to the same receiver after a previous call was released, or disconnected. In other words, the packet transferring device of the present invention again receives a series of data from a terminal and detects transmitted data, so that a packet corresponding to the detected transmitted data is discarded without being resent. To summarize, in this packet transferring device, only packets whose receipt by a transmission receiver has not been confirmed, along with subsequent packets, are resent.
According to a first aspect of the present invention, there is provided a packet transferring device comprising:
packet preparation means for preparing a plurality of packets having a given length, based on a series of data sent from a terminal;
order number assignment means for assigning order numbers to the packets prepared by the packet preparation means;
transmission means for sending to a network those packets assigned order numbers;
transmitted packet order number storage means for storing an order number assigned to a packet whose receipt by a transmission receiver has been confirmed by a message sent from a transmission receiver via the network;
resending means for resending same data to a same receiver as for a previous call after re-establishment of a call when a line was disconnected after establishment of a previous call and before all data was transmitted,
the packet transferring device further comprising
original packet preparation means for supplying all data resent from the terminal to the packet preparation means so as to again prepare packets from the data, and for supplying the packets prepared to the order number assignment means so as to again prepare packets assigned order numbers; and
transmission means for resending only the packets judged as untransmitted while discarding a packet judged as transmitted, judgment being made through comparison between order numbers assigned to the packets prepared by the original packet preparation means and an order number stored in the order number storage means.
In this arrangement, when the order number assigned to a packet is equal to or smaller than the order number stored in the device, which is the order number of a packet with transmission confirmation obtained, the packet is judged as transmitted, and is not resent. On the other hand, when the number is larger, as the packet is judged as untransmitted, it will be sent.
According to a second aspect of the present invention, there is provided a packet transferring device comprising:
order number assignment means for assigning order numbers to packeted data sent from a terminal;
transmission means for sending packets assigned order numbers to a network;
transmitted packet order number storage means for storing an order number assigned to a packet whose receipt by a transmission receiver has been confirmed by a message sent from a transmission receiver via the network;
resending means for resending same data to the same receiver as for a previous call after re-establishment of a call when a line was disconnected after establishment and before all data was transmitted,
the data transferring device further comprising
original packet preparation means for supplying all packeted data resent from the terminal to the order number assignment means so as to prepare packets assigned order numbers again; and
transmission means for resending only those packets judged as untransmitted while discarding packets judged as transmitted, judgment being made through comparison between order numbers assigned to the packets prepared by the original packet preparation means and an order number stored in the order number storage means.
According to this aspect, when data is sent from the terminal in the form of a packet, the data transferring device assigns order numbers to the packets. As a result, the same advantage as that of the device according to the first aspect can be provided.
According to a third aspect of the present invention, there is provided a packet transferring device comprising:
storage means for storing a series of data sent from a terminal in a buffer;
packet preparation means for preparing a plurality of packets having a given length, based on the series of data stored in the buffer;
order number assignment means for assigning order numbers to the packets prepared by the packet preparation means;
transmission means for sending the packets assigned order numbers to a network;
transmitted packet order number storage means for storing an order number assigned to a packet whose receipt by a transmission receiver has been confirmed by a message sent from a transmission receiver via the network;
resending means for resending data to the same receiver as for a previous call after re-establishment of a call when a line was disconnected after establishment of the previous call and before all data was transmitted,
the packet transferring device further comprising
original packet preparation means for supplying the series of data stored in the buffer to the packet preparation means so as to again prepare packets from the data, and for supplying the packets prepared to the order number assignment means so as to again prepare packets assigned order numbers; and
transmission means for resending only those packets judged as untransmitted while discarding packets judged as transmitted, judgment being made through comparison between order numbers assigned to the packets prepared by the original packet preparation means and an order number stored in the order number storage means.
According to this aspect, a packet which has a larger order number than an order number stored in the device is considered as a packet whose receipt by a transmission receiver has not been confirmed and is therefore sent.
As described above, according to the first to third aspects of the present invention, the packet transferring device assigns an order number to a packet which was sent from a terminal to a network. Further, an order number of a packet is stored when the receipt of the packet by a transmission receiver on a network side is confirmed. Thus it is possible to know which packets have been confirmed as to their receipt by a transmission receiver within the packet transferring device. As a result, in an operation to send the same data to the same receiver, the packet transferring device makes a judgment so that packets without a transmission confirmation and subsequent packets are resent or sent and packets with a confirmation are not resent.
According to a fourth aspect of the present invention, there is provided a packet transferring device comprising:
number assignment means for assigning a given number to a packet to be sent and for storing the given number in a number storage means;
transmission means for sending the packet assigned a given number to a receiver, the given number being assigned by the number assignment means;
transmitted packet order number storage means for storing an order number assigned to a packet whose receipt by a transmission receiver has been confirmed by a message sent from a transmission receiver via the network; and
discrimination means for discriminating between transmitted and untransmitted packets through comparison between a content stored in the number storage means and a content stored in the transmitted packet number storage means.
According to this aspect, the discrimination means can easily identify a transmitted packet through comparison between the contents of the number storage means and of the transmitted packet number storage means.
According to a fifth aspect of the invention, a packet transferring device according to the fourth aspect comprises
resending means for sending an untransmitted packet after re-establishment of a call when a previous call to a transmission receiver was disconnected before all data was transmitted, wherein
the resending means includes resending packet determination means for determining a packet subjected to resending, based on a discrimination result made by the discrimination means.
In this aspect, when a call is disconnected due to trouble, the resending means determines which packets should be resent, based on the discrimination result by the discrimination means, which allows an effective resending operation.
According to a sixth aspect of the present invention, a packet transferring device according to the fourth aspect includes packet receiving means for receiving packets to be sent from a terminal.
According to a seventh aspect of the present invention, a packet transferring device according to the fifth aspect includes packet receiving means for receiving a packet to be sent from a terminal.
According to the sixth and seventh aspects, the packet receiving means receives packeted data, that is, a packet from a terminal.
According to an eighth aspect of the present invention, a packet transferring device according to the fourth aspect includes
data receiving means for receiving data to be sent from a terminal; and
packet preparation means for preparing a packet from the data received by the data receiving means.
According to a ninth aspect of the present invention, a packet transferring device according to the fifth aspect includes
data receiving means for receiving data to be sent, from a terminal; and
packet preparation means for preparing a packet from the data received by the data receiving means.
According to the eighth and ninth aspects, the packet preparation means receives data which has not been packeted yet from a terminal, and puts the data into a packet. This function allows the terminal to send any data intact to the packet transferring device without the need of putting them into a packet before sending.
According to a tenth aspect of the present invention, the number is an order number in a packet transferring device according to the fourth aspect.
According to an eleventh aspect of the present invention, the number is an order number in a packet transferring device according to the fifth aspect.
According to the tenth and eleventh aspects, the use of an order number makes it possible for a data transferring device to easily know which packets are transmitted and which packets are untransmitted.